Many intelligent system applications such as data mining, automatic process control, automatic target recognition, intelligent database search, data warehousing, and machine vision perform decision making using rules derived from offline training or online learning. Prior art approaches can be used for decision rule generation. These include knowledge acquisition methods in expert systems, statistical discriminate analysis, Bayesian decision theory, Bayes belief networks, fuzzy systems, artificial neural networks, genetic algorithms, etc.
Several of the approaches are capable of generating complicated decision rules to optimize decisions for the training data and yield superior re-substitution (test on training data) results. In simple applications, almost all above approaches could result in reasonable performance. However, due to the dynamic nature of many applications, unforeseen conditions or data are often encountered online that challenge the decision rules created without the benefits of the new information. Decision rules specifically optimized for the earlier training data may fail on the new data. Thus, they lack robustness.
To overcome the difficulty of non-robust performance, prior art approaches divide available data into training and testing sets. They use the training set to generate decision rules and use the test set to evaluate the robustness of the decision rules generated from the training set. This approach could improve the robustness of the decision rules. However, it is inefficient since it generates decision rules from only partial data and most of them cannot use new data to update decision rules incrementally.
A Decision tree is a popular prior art set of decision rules. A typical decision tree classifier makes crisp decisions. That is, it makes decisions following a definitive path of decision structure and assigns a class unequivocally to an input sample. This method supports applications with discontinuous decision boundaries well and is desirable in classification applications where context switching is required around decision boundaries. However, in applications that require generalization or in applications where the training data cannot accurately predict decision boundaries or when the input samples are subject to noise and therefore perturb around the decision boundaries, a smooth decision around a decision boundary is desirable and more robust.
Most of the decision methodologies such as decision trees are not designed to allow for incremental update. There is no easy way to incrementally update a decision rule using new training samples after the tree is constructed. Alternatively, completely new rules are constructed when new samples are available. However, the new rules may have very different performance characteristics from the old ones. This is not desirable in critical applications where performance characteristics should be stable and update learning should change the performance characteristic gracefully.